1. Field of the Invention
The present invention relates to information processing systems and methods for transferring to, and updating information on, information handling systems such as spreadsheets, word processors, and the like, with information from web pages, other unstructured flat files, structured data sources such a databases, and other sources.
2. Description of Related Art
Computer users have a need to take data from web pages, databases, or other data sources, and incorporate specific data items in an information handling system such as a spreadsheet, word processing document, etc. The displayed information can be organized in rows and columns or other dimensional formats. A columnar presentation is the natural presentation for a spreadsheet program. The foregoing presentation may include a word processing document that contains a table, a presentation graphics file with a table, a word processing bookmark, or a database organized into fields and records.
Referring to the prior art method of FIG. 1, a user can employ an ordinary browser 1 to operate over the Internet 2 and designate an Internet data source 3 by specifying a URL (Uniform Resource Locator), address, or file name. By formulating an appropriate web query 4, the user can retrieve the data into an Internet browser (operation 5) or other similar software program.
Next, using the Windows® clipboard, or a similar program, a user can extract (copy) the required information from the browser as shown in operation 6. The user would then paste the data into a separate document that can be used by, for example, spreadsheet application 7. If the structure of the data on the web page, or other similar document does not match the organization of the end document, multiple copy and paste operations would be required.
More sophisticated users might import the entire web page into a spreadsheet and then provide “links” to the required areas of the document. The term “links” refers to a memory-addressing scheme that allows an item in one document to be tied to another item so that when one item changes, the item linked to it also changes. While minimizing the copy and paste method, this approach still requires the user to enter a web address, copy and paste the data into a spreadsheet, and manually insert “links” for each data item required. This is still a very labor intensive operation. Many documents may require multiple web pages imported for a single update.
In commercially available spreadsheet programs (e.g., the Excel™ spreadsheet program) one can create web queries that allow one to fetch data over the World Wide Web and automatically load this data into a spreadsheet. To use this feature one must be skilled in writing statements in HTML (hyper text markup language). This requires a specialized skill that many users will not have the time or desire to acquire.
Commercially available programs can be modified with “add-ins.” For example, objects are available for the Excel™ spreadsheet to assist a software designer who wishes to create such an add-in. Existing development tools can create add-ins for other applications. At a more fundamental level, a component object model (COM) has been developed, which defines a standard for software objects that can be used as components in software from third parties unrelated to the object developer. This COM standard has been applied across many platforms and forms the basis for more sophisticated techniques for establishing communications or a server-client relationship between different software programs. These various techniques offer tools that are understood by sophisticated software programmers and do not form a basis for allowing ordinary users of applications to extend the capability of those applications.
In U.S. Pat. No. 5,437,006 an Excel™ spreadsheet program allows user-defined macros to call DLLs, which are then able to call back to the spreadsheet program to change its state or use its various functions or commands. This reference shows general-purpose tools and is not arranged to enable a non-specialist to fetch and display data in a running application in a simple fashion.
In U.S. Pat. No. 6,078,924 applications such as Word™, Excel™, or PowerPoint™ can be extended with menus and buttons enabling a user to gain access to a database maintained by a catalog server and information server. The user can request that the catalog server obtain information from the World Wide Web and store the collected information in the database. This system can parse the information obtained over the Internet. The catalog server acts as an intermediary and retrieves data over the Internet according to its own search schedule. Operation of this system requires the deployment of a large scale, specialized database and is not designed to easily allow a single user to directly handle information currently available from the Internet and other sources without an intermediary.
In U.S. Pat. No. 5,983,268 a user can access a specialized web server over the Internet using a conventional browser. The user can identify certain web pages, which are then presented to the user who can then mark the data of interest. The web server will record marker information around the selected data so just the selected data can be parsed and retrieved later. The selected data can be later presented to the user in a spreadsheet format so the user can perform calculations based on various cells in the usual manner. Again, this system requires the deployment of a sophisticated server and is not designed to allow the user to directly handle information currently available from the Internet and other sources without an intermediary.
In U.S. Pat. No. 5,319,777 a number of personal computers are connected through a LAN to one or more table servers. Each of the PCS can run a conventional spreadsheet program. This system is designed to fetch existing tables and does not consider rearranging information to accommodate a user's preferences for display in a spreadsheet program or other application.
In U.S. Pat. No. 5,893,079 users at various workstations can send queries to a database over a network that can use TCP/IP. The user has a spreadsheet interface and can export the fetched data to a conventional spreadsheet program, such as the Excel™ program. This is a cumbersome approach requiring the user to switch from the downloading application to a spreadsheet application. Once the spreadsheet program is launched, the user is then faced with rearranging the downloaded data to meet personal preferences.
See also U.S. Pat. Nos. 5,819,271 and 5,864,871 (users access word processing documents or spreadsheet files over the Internet using a conventional browser; U.S. Pat. No. 5,381,470 (database created by accessing a computerized auto-dialer, and creating reports using conventional spreadsheet packages); U.S. Pat. No. 5,361,393 (accounting data is entered into a conventional spreadsheet program before being uploaded into a central database); U.S. Pat. No. 5,937,155 (planning software with spreadsheet-like interface); U.S. Pat. No. 5,293,615 (integration of a database and spreadsheet program). U.S. Pat. No. 5,784,545 (a spreadsheet program); U.S. Pat. No. 6,061,695 (a Windows® desktop is produced from a hypertext page); U.S. Pat. Nos. 5,778,357 and 5,414,838 (a query language for a database); and U.S. Pat. No. 5,297,032 (trading data is delivered to workstations on the trading floor).